// function pager(array) {
//     if (!Array.isArray(array)) {
//         throw new Error("array 必须是一个数组");
//     }
//
//     // let pageSize = 2;//每页显示的数据量
//     let total = array.length;//数据总数
//
//     let pageCount;//一共有多少页
//     if (total % pageSize === 0) {
//         pageCount = Math.floor(total / pageSize);
//     } else {
//         pageCount = Math.floor(total / pageSize) + 1;
//     }
//     // let pageNum = 0;//当前页码
//     let firstNum = 1;//首页码1
//     let lastNum = pageCount;//尾页码
//     let preNum = pageNum - 1;//上一页页码
//     if (preNum <= 0) {
//         preNum = 0;
//     }
//     let nextNum = pageNum + 1;//下一页页码
//     if (nextNum >= pageCount) {
//         nextNum = pageCount;
//     }
// }

// const lodash = require("lodash");

class PagerHelper {
    constructor(href, options = [10, 20, 50], pageNum = 1, pageSize = 10) {
        this.pageNum = pageNum;
        this.pageSize = pageSize;

        this.options = options;
        this.href = href;
    }

    // setArray(array) {
    //     if (!Array.isArray(array)) {
    //         throw new Error("array 必须是一个数组");
    //     }
    setCount(count) {
        //记录总数
        this.count = count;

        if (this.count % this.pageSize === 0) {
            this.total = Math.floor(this.count / this.pageSize);
        } else {
            this.total = Math.floor(this.count / this.pageSize) + 1;
        }

        //删除一整页数据时，pageNum要调整
        if (this.pageNum > this.total) {
            this.pageNum = this.total;
        }

        this.firstNum = 1;//首页码1
        this.lastNum = this.total;//尾页码
        this.preNum = this.pageNum - 1;//上一页页码
        if (this.preNum <= 0) {
            this.preNum = 1;
        }
        this.nextNum = this.pageNum + 1;//下一页页码
        if (this.nextNum >= this.total) {
            this.nextNum = this.total;
        }

        // this.pageData = lodash.chunk(array, this.pageSize);
    }

    // getPageData() {
    //     //删除一整数据时，pageNum要调整
    //     if (this.pageNum > this.total) {
    //         this.pageNum = this.total;
    //     }
    //     return this.pageData[this.pageNum - 1];
    // }
}

module.exports = {
    pagerHelper: new PagerHelper()
}